package com.kamistoat.meimeistore.modulessystem.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.kamistoat.meimeistore.apisystem.domain.SysPost;
import com.kamistoat.meimeistore.commoncore.utils.page.PageUtils;
import com.kamistoat.meimeistore.apisystem.entity.SysPostEntity;

import java.util.List;
import java.util.Map;

/**
 * 岗位信息表
 *
 * @author kamistoat
 * @email linjianshanke@163.com
 * @date 2022-08-09 10:34:46
 */
public interface SysPostService extends IService<SysPostEntity> {

    PageUtils queryPage(Map<String, Object> params);

    List<SysPostEntity> selectPostList(SysPost sysPost);

    /**
     * 获取用户拥有的normal状态的post
     */
    List<SysPostEntity> selectPostListUnderNormal(Long userId);

    List<SysPostEntity> selectPostListByUserId(Long userId);

    SysPostEntity selectPostByPostId(Long postId);

    /**
     * 检查岗位名称是否唯一。同时考虑新增和修改的情况
     */
    boolean checkPostNameUnique(SysPost post);

    /**
     * 检查岗位代码是否唯一，同时考虑新增和修改的情况
     */
    boolean checkPostCodeUnique(SysPost post);

}

